100 DV=PEEK(186):IF DV<8 THEN DV=8 105 POKE53280,6:POKE53281,6:PRINTCHR$(14)CHR$(8):B=0 110 GOSUB840 115 DIMX(300),P$(10,10,10) 120 PRINT"[147][212]HE MAIN MENU IS:":PRINT 125 PRINT"[159]1[146] [201]NTRODUCTION (RECOMMENDED READING)":PRINT 130 PRINT"[159]2[146] [196]EMONSTRATION OF COMPUTER ENCIPHERING";:PRINT 135 PRINT"[159]3[146] [196]EMONSTRATION OF COMPUTER DECIPHERING" 140 PRINT"[159]4[146] [208]RINTING CIPHER SHEETS":PRINT 145 PRINT"[159]5[146] [197]XIT TO [199]AZETTE [196]ISK":PRINT 150 PRINT"[195]HOOSE [159]1[146] TO [159]5[146]." 155 GETA$:IFA$<>"1"ANDA$<>"2"ANDA$<>"3"ANDA$<>"4"ANDA$<>"5"THEN155 160 IFA$="1"THEN200 165 IFA$="2"THEN970 170 IFA$="3"THEN1895 175 IFA$="4"THEN2675 180 IFA$="5"THENPRINT"[147][196]O YOU WISH TO QUIT? (Y/N)" 185 GETA$:IFA$<>"Y"ANDA$<>"[217]"ANDA$<>"N"ANDA$<>"[206]"THEN185 190 IFA$="Y"ORA$="[217]"THEN785 195 IFA$="N"ORA$="[206]"THEN120 200 PRINT"[147][159] [212]HE [213]NBREAKABLE [195]IPHER" 205 PRINT" BY [202]AMES [212]. [202]ONES ":PRINT 210 PRINT"[201]N CRYPTOGRAPHY THERE IS A TECHNIQUE":PRINT 215 PRINT"FOR ENCIPHERING PLAINTEXT CALLED THE":PRINT 220 PRINT"ONE-TIME SHEET (OR OTS). [212]HE BASIC":PRINT 225 PRINT"IDEA UNDERLYING THE METHOD IS TO USE":PRINT 230 PRINT"RANDOM ARRAYS OF LETTERS, NUMBERS,":PRINT 235 PRINT"SPACES AND PUNCTUATION MARKS (IF ANY) BY" 240 PRINT"MEANS OF WHICH CIPHERTEXT IS PREPARED." 245 PRINT"[159][208]RESS TO CONTINUE." 250 GETA$:IFA$<>" "THEN250 255 PRINT"[147][206]O ELEMENT OF THE ARRAYS IS EVER":PRINT 260 PRINT"USED MORE THAN ONCE. [193] STATISTICAL":PRINT 265 PRINT"ANALYSIS OF THE OCCURRENCES OF ELEMENTS":PRINT 270 PRINT"OR THE NUMBERS REPRESENTING THEM":PRINT 275 PRINT"WILL THEREFORE NOT READILY YIELD":PRINT 280 PRINT"USEFUL INFORMATION FOR BREAKING THE":PRINT 285 PRINT"CIPHER.":PRINT 290 PRINT"[212]HE PERSON PREPARING THE CIPHER-":PRINT 295 PRINT"TEXT AND THE RECIPIENT(S) ARE":PRINT 300 PRINT"ASSUMED TO HAVE DUPLICATE COPIES":PRINT 305 PRINT"OF THE CIPHER ARRAYS." 310 PRINT"[159][208]RESS TO CONTINUE." 315 GETA$:IFA$<>" "THEN315 320 PRINT"[147]":RESTORE:A=0:GOSUB680 325 PRINT"[204]ET US CONSIDER A SPECIFIC EXAMPLE.":PRINT 330 PRINT"[193] SET OF ARRAYS CAN CONSIST OF UP TO":PRINT 335 PRINT"TEN ARRAYS NUMBERED FROM 0 TO 9. [197]ACH":PRINT 340 PRINT"ARRAY CONSISTS OF TEN COLUMNS (0-9)":PRINT 345 PRINT"AND TEN ROWS (0-9)." 350 PRINT"[159][208]RESS TO CONTINUE." 355 GETA$:IFA$<>" "THEN355 360 PRINT"[147]":RESTORE:A=0:GOSUB680 365 PRINT"[196]IFFERENT SETS OF ARRAYS ARE NUMBERED";:PRINT 370 PRINT"SEQUENTIALLY BEGINNING WITH 1. [201]N THIS":PRINT 375 PRINT"EXAMPLE, THE SET OF ARRAYS CONSISTS OF":PRINT 380 PRINT"A SINGLE ARRAY, ARRAY 0[146].":PRINT 385 PRINT"[159][208]RESS TO CONTINUE." 390 GETA$:IFA$<>" "THEN390 395 PRINT"[147]":RESTORE:A=0:GOSUB680 400 PRINT"[212]HE ELEMENT OF ARRAY 0[146] CORRESPONDING":PRINT 405 PRINT"TO [158]ROW 0 AND [158]COLUMN 0 IS THE NUMBER "CHR$(34)"2"CHR$(34)"." 410 PRINT"[212]HE ELEMENT CORRESPONDING TO [158]ROW 8 AND":PRINT 415 PRINT"[158]COLUMN 5 IS "CHR$(34)"L"CHR$(34)". 420 [153]"OPEN (null)RESS TO CONTINUE" 425 [161]A$:[139]A$[179][177]" "[167]425 430 [153]"LOAD":[140]:A[178]0:[141]680 435 [153]"ATNN ELEMENT IN A GIVEN ARRAY IS SPECI-";:[153] 440 [153]"FIED BY SYS(A)(R)(C) WHERE SYS(A), SYS(R), AND":[153] 445 [153]"SYS(C) ARE THE ARRAY NUMBER, ROW NUMBER AND";:[153] 450 [153]"COLUMN NUMBER, RESPECTIVELY. LEFT$ENCE, SYS076";:[153] 455 [153]"WOULD REPRESENT "[199](34)"O"[199](34)" IN THE ABOVE ARRAY." 460 [153]"OPEN(null)RESS TO CONTINUE." 465 [161]A$:[139]A$[179][177]" "[167]465 470 [153]"LOADVALNCIPHERED CHARACTERS ARE REPRE-":[153] 475 [153]"SENTED BY THREE-DIGIT GROUPS, OF THE ":[153] 480 [153]"FORM SYS(A)(R)(C), WRITTEN ADJACENTLY":[153] 485 [153]"WITHOUT INTERVENING SPACES. ASCOR EXAMPLE," 490 [153]"SYS012145 WOULD REPRESENT TWO THREE-DIGIT":[153] 495 [153]"GROUPS OF THE FORM":[153] 500 [153]"SYS(A1)(R1)(C1)(A2)(R2)(C2)":[153] 505 [153]"WITH SYS(A1)=0,SYS (R1)=1,SYS (C1)=2, SYS(A2)=1,":[153] 510 [153]"SYS(R2)=4 AND SYS(C2)=5." 515 [153]"OPEN(null)RESS TO CONTINUE." 520 [161]A$:[139]A$[179][177]" "[167]520 525 [153]"LOAD":[140]:A[178]0:[141]680 530 [153]"RIGHT$N THE ABOVE ARRAY, THE SIX-DIGIT":[153] 535 [153]"GROUP, SYS013029, REPRESENTS THE WORD "[199](34)"IT"[199](34)"." 540 [153]"(null)HE ELEMENT CORRESPONDING TOSYS ROW 1,":[153] 545 [153]"SYSCOLUMN 3 IS "[199](34)"I"[199](34)". SYS(null)OW 2 AND SYSCOLUMN 9":[153] 550 [153]"SPECIFY THE ELEMENT "[199](34)"T"[199](34)"." 555 [153]"OPEN(null)RESS TO CONTINUE." 560 [161]A$:[139]A$[179][177]" "[167]560 565 [153]"LOAD(null)O ELEMENT OF A GIVEN ARRAY SHOULD" 570 [153]"EVER BE USED MORE THAN ONCE, BECAUSE" 575 [153]"REPETITION OF ITS ROW AND COLUMN COULD" 580 [153]"CONCEIVABLY ASSIST IN BREAKING THE" 585 [153]"CIPHER. RIGHT$F THE SAME NUMBER OR LETTER" 590 [153]"IS USED MULTIPLE TIMES, DIFFERENT" 595 [153]"ARRAY NUMBERS, ROWS AND COLUMNS ARE" 600 [153]"FOUND SUCCESSIVELY FOR ENCIPHERED" 605 [153]"REPRESENTATION. RIGHT$N THIS WAY, FOR A" 610 [153]"GIVEN ARRAY, A PARTICULAR ROW AND" 615 [153]"COLUMN ARE USED ONCE AND ONLY ONCE." 620 [153]"(null)HEN USING PRINTED ARRAYS, ALWAYS" 625 [153]"CROSS OFF EACH ELEMENT AS IT IS USED." 630 [153]"(null)HIS PROGRAM REQUIRES THAT PLAIN-" 635 [153]"TEXT BE ENTERED USING ONLY LOWER CASE" 640 [153]"LETTERS OF THE VALNGLISH ALPHABET AND" 645 [153]"THE NUMBERS 0 TO 9. (null)O SPACES ARE" 650 [153]"ALLOWED. (null)UBROUTINES HAVE BEEN INTRO-" 655 [153]"DUCED TO ACCOMPLISH THIS PURPOSE." 660 [151]214,21:[153] 665 [153]"OPEN(null)RESS TO RETURN TO MAIN MENU" 670 [161]A$:[139]A$[179][177]" "[167]670 675 [137]120 680 [153]"LOADOPENSET OF ARRAYS #" 1:[153] 685 [153]"OPENONCOLUMN--->SYS0 1 2 3 4 5 6 7 8 9 " 690 [129]R[178]0[164]9:[129]C[178]0[164]9 695 [135] P$(A,R,C) 700 [130]C,R 705 [129] R[178]0 [164] 9 710 [153]"SYS"[166]09)R;:[129] C[178]0[164]9 715 [153]" "P$(A,R,C);:[130]C:[153] 720 [130] R 725 [153]"ONONONONONONARRAY" 0"WAIT" 730 [131] 2,E,S,P,R,G,M,Z,Z,T 735 [131] U,A,Z,I,Y,V,P,W,A,K 740 [131] 9,M,V,A,N,Q,S,B,9,T 745 [131] M,G,O,H,5,F,1,Z,F,O 750 [131] S,1,B,Q,H,8,O,2,9,W 755 [131] 9,S,R,4,U,4,Y,5,L,3 760 [131] N,7,R,C,P,A,G,B,6,Q 765 [131] P,1,3,Y,1,3,O,D,M,S 770 [131] A,5,D,G,N,L,Z,5,6,0 775 [131] 4,U,3,D,V,1,X,E,J,G 780 [142] 785 [143] EXIT TO GAZETTE DISK FOR 64 USERS 790 [153]"LOADPEEKE SURE THE CHR$AZETTE STR$ISK IS IN":[153] 795 [153]"THE DISK DRIVE AND PRESS SYS<(null)VAL(null)(null)(null)(null)>." 800 [161]A$:[139]A$[179][177][199](13)[167]800 805 [160]15:[159]15,DV,15,"R0:MENU=MENU":[132]15,E:[160]15:[139]E[179][177]63[167]830 810 [153]"LOAD":[151]214,12:[153]:[153]"(null)OADING (null)ENU OF CHR$AZETTE STR$ISK FOR 64":[153] 815 [153]"(null)SERS....(null)LEASE STANDBY...":[129]T[178]1[164]5000:[130] 820 [151]646,[194](53281):[153]"LOAD"[199](34)"MENU"[199](34)","DV",1" 825 [151]631,13:[151]198,1:[128] 830 [153]"(null)ORRY! (null)HE FILE "[199](34)"MENU"[199](34)" WAS NOT FOUND!":[128] 835 [143] FORMAT A DISK 840 [153]"LOAD(null)HIS PROGRAM REQUIRES A NEWLY":[153] 845 [153]"FORMATTED DISK OR A DISK WITH AT LEAST":[153] 850 [153]"100 BLOCKS FREE.":[153] 855 [153]"STR$O YOU WISH TO FORMAT A DISK? (Y/N)":[153] 860 [161]A$:[139]A$[179][177]"Y"[175]A$[179][177]"(null)"[175]A$[179][177]"N"[175]A$[179][177]"(null)"[167]860 865 [139]A$[178]"N"[176]A$[178]"(null)"[167]115 870 [153]"LOAD(null)EMOVE THE CHR$AZETTE STR$ISK FROM THE":[153] 875 [153]"THE DISK DRIVE AND INSERT THE DISK":[153] 880 [153]"TO BE FORMATTED.":[153] 885 [141]3420:[141]3355 890 [153]"SYSLENAUTION: THE DISK WILL BE ERASED.":[153] 895 [153]"PEEKE SURE THE DISK DRIVE IS POWERED AND":[153] 900 [153]"PROPERLY CONNECTED. (null)LEASE PRESS":[153] 905 [153]"(null)VAL(null)(null)(null)(null)WAITSYS TO PROCEED WITH FORMATTING":[153] 910 [153]"WHEN THE DISK DRIVE IS READY." 915 [161]A$:[139]A$[179][177][199](13)[167]915 920 [153]"(null)AME OF DISK:WAIT":[153] 925 LE[178]16:AL[178]1:NU[178]1:[141]3495:DN$[178]Z$ 930 [153]"STR$ISK ID:WAIT":[153] 935 LE[178]2:AL[178]1:NU[178]1:[141]3495:ID$[178]Z$ 940 [153]"LOAD(null)LEASE WAIT....FORMATTING...":[153]:[153] 945 [160]15:[159]15,DV,15,"N0:"[170]DN$[170]","[170]ID$:[160]15 950 [159]15,DV,15:[132]15,E,E$,T,S:[160]15:[139]E[178]0[167][142] 955 [141]3420:[141]3355:[153]:[153]E;E$;T;S:[153] 960 [153]"STR$RIVE ERROR!":[129]T[178]1[164]5000:[130] 965 [142] 970 [140]:[141]2430 975 [153]"LOADRIGHT$F NECESSARY, REMOVE THE CHR$AZETTE STR$ISK":[153] 980 [153]"FROM THE DRIVE AND INSERT A DISK":[153] 985 [153]"WITH AT LEAST 100 BLOCKS FREE.":[153] 990 [151]214,20:[153]:[153]"OPEN (null)RESS TO CONTINUE" 995 [161]A$:[139]A$[179][177]" "[167]995 1000 [143] PROGRAM TO ENCIPHER PLAINTEXT 1005 [151]53280,6:[151]53281,6 1010 [153]"LOADRIGHT$N ENCIPHERING PLAINTEXT, IT IS":[153] 1015 [153]"CUSTOMARY TO OMIT SPACES BETWEEN WORDS":[153] 1020 [153]"AND PUNCTUATION MARKS, BECAUSE THESE":[153] 1025 [153]"MAY FACILITATE 'BREAKING' THE CIPHER.":[153] 1030 [153]"ASCOR EXAMPLE, 'SUBSCRIBE TO CHR$AZETTE!'":[153] 1035 [153]"WOULD BE WRITTEN AS":[153] 1040 [153]" 'SUBSCRIBETOGAZETTE'.":[153] 1045 [153]"RIGHT$N THE INTRODUCTION, IT WAS":[153] 1050 [153]"POINTED OUT THAT A LETTER OR NUMBER IS":[153] 1055 [153]"REPRESENTED BY A THREE-DIGIT GROUP OF":[153] 1060 [153]"THE FORM SYS(A)(R)(C), WHERE SYS(A), SYS(R)":[153] 1065 [153]"OPEN (null)RESS TO CONTINUE" 1070 [161]A$:[139]A$[179][177]" "[167]1070 1075 [153]"LOADAND SYS(C) ARE THE ARRAY, ROW AND":[153] 1080 [153]"COLUMN NUMBERS, RESPECTIVELY.":[153] 1085 [153]"(null)LAINTEXT IS ENCIPHERED INTO A SE-":[153] 1090 [153]"QUENCE OF THREE-DIGIT GROUPS OF THE FORM" 1095 [153]"SYS(A1)(R1)(C1)(A2)(R2)(C2)(A3)(R3)(C3)...":[153] 1100 [153]"WHERE THE SUBSCRIPTS INDICATE DIFFERENT":[153] 1105 [153]"ARRAY, ROW AND COLUMN NUMBERS.":[153] 1110 [153]"(null)HE DIGITS ARE WRITTEN IN A":[153] 1115 [153]"CONTINUOUS SEQUENCE, WITH NO INTERVENING" 1120 [153]"SPACES.":[153] 1125 [153]"OPEN (null)RESS TO CONTINUE" 1130 [161]A$:[139]A$[179][177]" "[167]1130 1135 [153]"LOADSYSRIGHT$S THE DISK DRIVE READY?":[153] 1140 [141]3365 1145 [153]"SYSPEEKE SURE THAT THE PRINTER IS POWERED":[153] 1150 [153]"AND PROPERLY CONNECTED AS DEVICE 4." 1155 [159]15,4,15:[160]15:[139] ST[179][177]0 [167] [141]3335 1160 [139]ST[178]0[167]1200 1165 [153]"SYS(null)HEN YOUR PRINTER IS READY PRESS":[153] 1170 [153]"<(null)VAL(null)(null)(null)(null)>.":[153] 1175 [161]A$:[139]A$[179][177][199](13)[167]1175 1180 [159]15,4,15:[160]15:[139] ST[179][177]0 [167] [141]3355 1185 [139]ST[178]0[167]1200 1190 [141]3420 :[153]"LOAD":[153]:[153]"OPEN(null)HERE ARE STILL PROBLEMS WITH YOUR" 1195 [153]"PRINTER. (null)ORRY!":[129]T[178]1[164]5000:[130]:[137]120 1200 [151]214,20:[153]:[153]"OPEN (null)RESS TO CONTINUE" 1205 [161]A$:[139]A$[179][177]" "[167]1205 1210 [153]"LOAD(null)ET US CONSIDER A SPECIFIC EXAMPLE.":[153] 1215 [153]:[153]"ATN MESSAGE NUMBER (1-999) IS ASSIGNED":[153] 1220 [153]"TO EACH ENCIPHERED MESSAGE CORRES-":[153] 1225 [153]"PONDING TO PLAINTEXT. (null)SUALLY,":[153] 1230 [153]"MESSAGES ARE NUMBERED SEQUENTIALLY,":[153] 1235 [153]"BEGINNING WITH 1.":[153] 1240 [153]"ATNT THE SPECIAL CURSOR, TYPE THE":[153] 1245 [153]"MESSAGE NUMBER AND PRESS OPEN<(null)VAL(null)(null)(null)(null)>.":[153] 1250 LE[178]3:AL[178]0:NU[178]1:[141]3445:M$[178]Z$:M[178][195](M$):[139]M[179][177]0[167]1270 1255 [153]"(null)O MESSAGE # WAS ENTERED! (null)RY AGAIN!" 1260 [141]3355:[141]3420:[129]T[178]0[164]4000:[130] 1265 [137]1210 1270 [153]"OPEN (null)RESS TO CONTINUE" 1275 [161]A$:[139]A$[179][177]" "[167]1275 1280 [153]"LOADATNT THE SPECIAL CURSOR, TYPE THE":[153] 1285 [153]"PLAINTEXT GAZETTEWAIT AND PRESSOPEN <(null)VAL(null)(null)(null)(null)>.":[153] 1290 LE[178]253:AL[178]1:NU[178]1:[141]3445:E$[178]Z$:N[178][195](E$):[139]N[179][177]0[167]1310 1295 [153]"(null)O PLAINTEXT WAS ENTERED! (null)RY AGAIN!" 1300 [141]3355:[141]3420:[129]T[178]0[164]4000:[130] 1305 [137]1280 1310 [160]15:[159]15,DV,15,"I0":[160]15 1315 [153]:[159]1,4:[159]2,DV,2,"0:MESSAGE #"[170]M$[170]",S,W" 1320 [152]1,"MESSAGE #"[170]M$:[152]1:[152]1,E$:[152]1 1325 J[178]1 1330 [140] 1335 A$(0)[178]"0":A$(1)[178]"1":A$(2)[178]"2":A$(3)[178]"3":A$(4)[178]"4":A$(5)[178]"5":A$(6)[178]"6" 1340 A$(7)[178]"7":A$(8)[178]"8":A$(9)[178]"9":R$(0)[178]"0":R$(1)[178]"1":R$(2)[178]"2":R$(3)[178]"3" 1345 R$(4)[178]"4":R$(5)[178]"5":R$(6)[178]"6":R$(7)[178]"7":R$(8)[178]"8":R$(9)[178]"9":C$(0)[178]"0" 1350 C$(1)[178]"1":C$(2)[178]"2":C$(3)[178]"3":C$(4)[178]"4":C$(5)[178]"5":C$(6)[178]"6":C$(7)[178]"7" 1355 C$(8)[178]"8":C$(9)[178]"9" 1360 [129]R[178]0[164]9 1365 [129]C[178]0[164]9:[135]A$:[130]C 1370 [130]R 1375 [129]A[178]0[164]9:[129]R[178]0[164]9:[129]C[178]0[164]9 1380 [139]P$(A,R,C)[178][202](E$,J,1)[167][153]A$(A)R$(R)C$(C); 1385 [139]P$(A,R,C)[178][202](E$,J,1)[167][152]2,A$(A)R$(R)C$(C); 1390 [139]P$(A,R,C)[178][202](E$,J,1)[167][152]1,A$(A)R$(R)C$(C); 1395 [139]P$(A,R,C)[178][202](E$,J,1)[167]P$(A,R,C)[178]" ":J[178]J[170]1:[139]J[177]N[167]1445 1400 [139]A[178]9[175]R[178]9[175]C[178]9[175]J[179]N[167]1410 1405 [130]C,R,A 1410 [129]A[178]0[164]9:[129]R[178]0[164]9:[129]C[178]0[164]9 1415 [139]P$(A,R,C)[178][202](E$,J,1)[167][153]A$(A)R$(R)C$(C); 1420 [139]P$(A,R,C)[178][202](E$,J,1)[167][152]2,A$(A)R$(R)C$(C); 1425 [139]P$(A,R,C)[178][202](E$,J,1)[167][152]1,A$(A)R$(R)C$(C); 1430 [139]P$(A,R,C)[178][202](E$,J,1)[167]P$(A,R,C)[178]" ":J[178]J[170]1:[139]J[177]N[167]1445 1435 [139]A[178]9[175]R[178]9[175]C[178]9[175]J[179]N[167]1410 1440 [130]C,R,A 1445 [160]2:[152]1:[152]1:[160]1 1450 [153]:[153]:[153]"(null)HE ENCIPHERED MESSAGE CORRESPONDING":[153] 1455 [153]"TO THE PLAINTEXT GAZETTEWAIT IS:":[153] 1460 [153]" 023SYS034257SYS298395SYS397440WAIT ":[153] 1465 [153]"WHERE THE THREE-DIGIT GROUPS HAVE BEEN":[153] 1470 [153]"DISPLAYED IN ALTERNATING COLORS FOR":[153] 1475 [153]"CLARITY." 1480 [153]"OPEN (null)RESS TO CONTINUE" 1485 [161]A$:[139]A$[179][177]" "[167]1485 1490 [153]"LOADVALACH THREE-DIGIT GROUP IN THE":[153] 1495 [153]"ENCIPHERED MESSAGE REPRESENTS A LETTER":[153] 1500 [153]"IN THE PLAINTEXT GAZETTEWAIT.":[153] 1505 [153]"(null)HE MESSAGE NUMBER, THE PLAINTEXT":[153] 1510 [153]"AND THE CORRESPONDING ENCIPHERED MESSAGE" 1515 [153]"HAVE BEEN PRINTED FOR FUTURE REFERENCE.":[153] 1520 [153]"(null)HE ENCIPHERED MESSAGE IS ALSO":[153] 1525 [153]"RECORDED ON THE DISK AS A SEQUENTIAL":[153] 1530 [153]"FILE.":[153] 1535 [153]"OPEN (null)RESS TO CONTINUE" 1540 [161]A$:[139]A$[179][177]" "[167]1540 1545 [153]"LOAD(null)OULD YOU LIKE TO ENTER A PLAINTEXT":[153] 1550 [153]"STATEMENT TO OBTAIN THE ENCIPHERED":[153] 1555 [153]"MESSAGE? (Y/N) (null)HE PLAINTEXT MAY BE":[153] 1560 [153]"UP TO 254 CHARACTERS IN LENGTH.":[153] 1565 [161]A$:[139]A$[179][177]"Y"[175]A$[179][177]"(null)"[175]A$[179][177]"N"[175]A$[179][177]"(null)"[167]1565 1570 [139]A$[178]"Y"[176]A$[178]"(null)"[167]1580 1575 [139]A$[178]"N"[176]A$[178]"(null)"[167]120 1580 [153]"LOADATNT THE SPECIAL CURSOR, ENTER THE":[153] 1585 [153]"MESSAGE NUMBER AND PRESS OPEN<(null)VAL(null)(null)(null)(null)>.":[153] 1590 LE[178]3:AL[178]0:NU[178]1:[141]3445:M1$[178]Z$:M1[178][195](M1$):[139]M1[179][177]0[167]1610 1595 [153]"(null)O MESSAGE # WAS ENTERED! (null)RY AGAIN!" 1600 [141]3355:[141]3420:[129]T[178]0[164]4000:[130] 1605 [137]1580 1610 [151]214,21:[153]:[153]"OPEN (null)RESS TO CONTINUE" 1615 [161]A$:[139]A$[179][177]" "[167]1615 1620 [153]:[153]"LOADATNT THE SPECIAL CURSOR, TYPE THE":[153] 1625 [153]"PLAINTEXT STATEMENT AND PRESSOPEN <(null)VAL(null)(null)(null)(null)>.":[153] 1630 [153]"(null)HE PLAINTEXT SHOULD BE LESS THAN 255":[153] 1635 [153]"CHARACTERS IN LENGTH. PEEKE SURE THAT":[153] 1640 [153]"THERE ARE NO SPACES OR PUNCTUATION":[153] 1645 [153]"MARKS IN THE PLAINTEXT.":[153] 1650 [141]1745 1655 [153]:[153]"OPEN (null)RESS TO CONTINUE" 1660 [161]A$:[139]A$[179][177]" "[167]1660 1665 [153]"LOADSTR$O YOU WISH TO:":[153]:[153] 1670 [153]"OPEN1WAIT RUN THIS SECTION AGAIN?":[153] 1675 [153]"OPEN2WAIT ENCIPHER A PLAINTEXT STATEMENT?":[153] 1680 [153]"OPEN3WAIT RETURN TO MAIN MENU?":[153] 1685 [153]"OPEN4WAIT EXIT TO CHR$AZETTE STR$ISK? PEEKE SURE TO" 1690 [153]"PLACE THE PROPER DISK IN THE DISK" 1695 [153]"DRIVE.":[153]:[153] 1700 [153]"(null)RESS OPEN1WAIT, OPEN2WAIT, OPEN3WAIT OR OPEN4WAIT." 1705 [161]A$:[139]A$[179][177]"1"[175]A$[179][177]"2"[175]A$[179][177]"3"[175]A$[179][177]"4"[167]1705 1710 [139]A$[178]"1"[167]1000 1715 [139]A$[178]"2"[167]1580 1720 [139]A$[178]"3"[167]120 1725 [139]A$[178]"4"[167][153]"LOADSTR$O YOU WISH TO QUIT? (Y/N)" 1730 [161]A$:[139]A$[179][177]"Y"[175]A$[179][177]"(null)"[175]A$[179][177]"N"[175]A$[179][177]"(null)"[167]1730 1735 [139]A$[178]"Y"[176]A$[178]"(null)"[167]785 1740 [139]A$[178]"N"[176]A$[178]"(null)"[167]1665 1745 LE[178]254:AL[178]1:NU[178]1:[141]3445:Q$[178]Z$:N[178][195](Q$):[139]N[179][177]0[167]1765 1750 [153]"(null)O PLAINTEXT WAS ENTERED! (null)RY AGAIN!" 1755 [141]3355:[141]3420:[129]T[178]0[164]4000:[130] 1760 [137]1620 1765 [160]15:[159]15,DV,15,"I0":[160]15 1770 [153]:[159]1,4:[159]2,DV,2,"0:MESSAGE #"[170]M1$[170]",S,W" 1775 [152]1,"MESSAGE #"[170]M1$:[152]1:[152]1,Q$:[152]1 1780 J[178]1 1785 [140] 1790 A$(0)[178]"0":A$(1)[178]"1":A$(2)[178]"2":A$(3)[178]"3":A$(4)[178]"4":A$(5)[178]"5":A$(6)[178]"6" 1795 A$(7)[178]"7":A$(8)[178]"8":A$(9)[178]"9":R$(0)[178]"0":R$(1)[178]"1":R$(2)[178]"2":R$(3)[178]"3" 1800 R$(4)[178]"4":R$(5)[178]"5":R$(6)[178]"6":R$(7)[178]"7":R$(8)[178]"8":R$(9)[178]"9":C$(0)[178]"0" 1805 C$(1)[178]"1":C$(2)[178]"2":C$(3)[178]"3":C$(4)[178]"4":C$(5)[178]"5":C$(6)[178]"6":C$(7)[178]"7" 1810 C$(8)[178]"8":C$(9)[178]"9" 1815 [129]A[178]0[164]9:[129]R[178]0[164]9:[129]C[178]0[164]9 1820 [139]P$(A,R,C)[178][202](Q$,J,1)[167][153]A$(A)R$(R)C$(C); 1825 [139]P$(A,R,C)[178][202](Q$,J,1)[167][152]2,A$(A)R$(R)C$(C); 1830 [139]P$(A,R,C)[178][202](Q$,J,1)[167][152]1,A$(A)R$(R)C$(C); 1835 [139]P$(A,R,C)[178][202](Q$,J,1)[167]P$(A,R,C)[178]" ":J[178]J[170]1:[139]J[177]N[167]1885 1840 [139]A[178]9[175]R[178]9[175]C[178]9[175]J[179]N[167]1850 1845 [130]C,R,A 1850 [129]A[178]0[164]9:[129]R[178]0[164]9:[129]C[178]0[164]9 1855 [139]P$(A,R,C)[178][202](Q$,J,1)[167][153]A$(A)R$(R)C$(C); 1860 [139]P$(A,R,C)[178][202](Q$,J,1)[167][152]2,A$(A)R$(R)C$(C); 1865 [139]P$(A,R,C)[178][202](Q$,J,1)[167][152]1,A$(A)R$(R)C$(C); 1870 [139]P$(A,R,C)[178][202](Q$,J,1)[167]P$(A,R,C)[178]" ":J[178]J[170]1:[139]J[177]N[167]1885 1875 [139]A[178]9[175]R[178]9[175]C[178]9[175]J[179]N[167]1850 1880 [130]C,R,A 1885 [160]2:[152]1:[152]1:[160]1 1890 [142] 1895 [143] PROGRAM FOR DECIPHERING MESSAGES 1900 [140]:[141]2430 1905 [153]"LOAD(null)OULD YOU LIKE TO:":[153]:[153] 1910 [153]"OPEN1WAIT RUN THE DEMONSTRATION PROGRAM FOR DECIPHERING A MESSAGE? 1915 PRINT:PRINT"[159]2[146] DECIPHER A MESSAGE PREPARED IN THE PRECEDING "; 1920 PRINT"SECTION?" 1925 PRINT:PRINT:PRINT"[208]RESS [159]1[146] OR [159]2[146]. 1930 [161]A$:[139]A$[179][177]"1"[175]A$[179][177]"2"[167]1930 1935 [139]A$[178]"1"[167]2010 1940 [139]A$[178]"2"[167]1945 1945 [141]2555 1950 [153]:[153]"OPEN (null)RESS TO CONTINUE" 1955 [161]A$:[139]A$[179][177]" "[167]1955 1960 [153]"LOAD(null)OULD YOU LIKE TO DECIPHER ANOTHER":[153] 1965 [153]"MESSAGE FOR WHICH A MESSAGE NUMBER":[153] 1970 [153]"HAS BEEN ASSIGNED? (Y/N)" 1975 [161]A$:[139]A$[179][177]"Y"[175]A$[179][177]"(null)"[175]A$[179][177]"N"[175]A$[179][177]"(null)"[167]1975 1980 [139]A$[178]"Y"[176]A$[178]"(null)"[167]1990 1985 [139]A$[178]"N"[176]A$[178]"(null)"[167]2310 1990 [141]2555 1995 [153]:[153]"OPEN (null)RESS TO CONTINUE" 2000 [161]A$:[139]A$[179][177]" "[167]2000 2005 [137]2310 2010 [153]"LOADRIGHT$N THE INTRODUCTION, IT WAS":[153] 2015 [153]"POINTED OUT THAT A LETTER OR NUMBER IS":[153] 2020 [153]"REPRESENTED BY A THREE-DIGIT GROUP OF":[153] 2025 [153]"THE FORM SYS(A)(R)(C), WHERE SYS(A), SYS(R)":[153] 2030 [153]"AND SYS(C) ARE THE ARRAY, ROW AND":[153] 2035 [153]"COLUMN NUMBERS, RESPECTIVELY.":[153] 2040 [153]"(null)LAINTEXT IS ENCIPHERED INTO A SE-":[153] 2045 [153]"QUENCE OF THREE-DIGIT GROUPS OF THE FORM" 2050 [153]"SYS(A1)(R1)(C1)(A2)(R2)(C2)(A3)(R3)(C3)...":[153] 2055 [153]"WHERE THE SUBSCRIPTS INDICATE DIFFERENT":[153] 2060 [153]"ARRAY, ROW AND COLUMN NUMBERS." 2065 [153]"OPEN (null)RESS TO CONTINUE." 2070 [161]A$:[139]A$[179][177]" "[167]2070 2075 [153]"LOAD(null)HE DIGITS ARE WRITTEN IN A":[153] 2080 [153]"CONTINUOUS SEQUENCE, WITH NO INTER-":[153] 2085 [153]"VENING SPACES.":[153] 2090 [153]"(null)HE FOLLOWING PROCEDURE ALLOWS THE":[153] 2095 [153]"PLAINTEXT CORRESPONDING TO AN ENCIPHERED";:[153] 2100 [153]"MESSAGE OF THIS FORM TO BE OBTAINED":[153] 2105 [153]"BY DIRECT KEYBOARD INPUT. ATNT MOST,":[153] 2110 [153]"84 THREE-DIGIT GROUPS (OR 252 DIGITS)":[153] 2115 [153]"MAY BE ENTERED." 2120 [151]214,22:[153]:[153]"OPEN (null)RESS TO CONTINUE" 2125 [161]A$:[139]A$[179][177]" "[167]2125 2130 [153]"LOADRIGHT$N USING THE PROGRAM FOR ENCIPHERING":[153] 2135 [153]"PLAINTEXT, THE FOLLOWING ENCIPHERED":[153] 2140 [153]"MESSAGE WAS OBTAINED:":[153] 2145 [153]" SYS023OPEN034SYS257OPEN298SYS395OPEN397SYS4400WAIT ":[153] 2150 [153]"WHERE THE THREE-DIGIT GROUPS, EACH":[153] 2155 [153]"REPRESENTING A LETTER OR NUMBER, HAVE":[153] 2160 [153]"BEEN HIGHLIGHTED IN DIFFERENT COLORS.":[153] 2165 [153]"VALNCIPHERED MESSAGES OF UP TO 84":[153] 2170 [153]"THREE-DIGIT GROUPS MAY BE (TEDIOUSLY)":[153] 2175 [153]"DECIPHERED.":[153] 2180 [153]"OPEN (null)RESS TO CONTINUE" 2185 [161]A$:[139]A$[179][177]" "[167]2185 2190 [153]"LOAD(null)HE EXAMPLE MESSAGE IS:":[153] 2195 [153]" SYS023OPEN034SYS257OPEN298SYS395OPEN397SYS440WAIT ":[153] 2200 [153]"ATNT THE SPECIAL CURSOR, ENTER THE":[153] 2205 [153]"ABOVE SEQUENCE OF DIGITS EXACTLY AS":[153] 2210 [153]"SHOWN AND PRESS <(null)VAL(null)(null)(null)(null)>.":[153] 2215 LE[178]252:AL[178]0:NU[178]1:[141]3445:C$[178]Z$ 2220 [153]:[153]"(null)HE PLAINTEXT CORRESPONDING TO":[153] 2225 [153]"THIS ENCIPHERED MESSAGE IS:":[153] 2230 [141]2485 2235 [153]:[153]"OPEN (null)RESS TO CONTINUE." 2240 [161]A$:[139]A$[179][177]" "[167]2240 2245 [137]2310 2250 [153]"LOAD(null)HE MESSAGE IS:":[153] 2255 [153]"SYS070OPEN095SYS303OPEN538SYS551OPEN556SYS595OPEN659SYS705OPEN742" 2260 [153]"SYS748OPEN772SYS786OPEN790SYS933OPEN004SYS253OPEN294SYS601OPEN650WAIT":[153] 2265 [153]"WITH NO INTERVENING SPACES. ATNS BEFORE,":[153] 2270 [153]"AT THE SPECIAL CURSOR ENTER A CONTINUOUS" 2275 [153]"SEQUENCE OF DIGITS AND PRESS .":[153] 2280 LE[178]252:AL[178]0:NU[178]1:[141]3445:D$[178]Z$ 2285 [153]:[153]"(null)HE PLAINTEXT (WITH NO SPACES!)":[153] 2290 [153]"CORRESPONDING TO THIS MESSAGE IS:":[153] 2295 [141]2520 2300 [153]:[153]"OPEN (null)RESS TO CONTINUE" 2305 [161]A$:[139]A$[179][177]" "[167]2305 2310 [153]"LOAD(null)OULD YOU LIKE TO:":[153]:[153] 2315 [153]"OPEN1WAIT RUN THE DEMONSTRATION PROGRAM?" 2320 [153]:[153]"OPEN2WAIT DECIPHER ANOTHER MESSAGE BY DIRECT KEYBOARD"; 2325 [153]" INPUT?" 2330 [153]:[153]"OPEN3WAIT DECIPHER A MESSAGE PREPARED IN THE SECTION ON"; 2335 [153]" ENCIPHERING?" 2340 [153]:[153]"OPEN4WAIT RETURN TO THE MAIN MENU?" 2345 [153]:[153]"OPEN5WAIT RETURN TO CHR$AZETTE STR$ISK?" 2350 [153]:[153]"(null)RESS OPEN1WAIT, OPEN2WAIT, OPEN3WAIT, OPEN4WAIT OR OPEN5WAIT. 2355 GETA$:IFA$<>"1"ANDA$<>"2"ANDA$<>"3"ANDA$<>"4"ANDA$<>"5"THEN2355 2360 IFA$="1"THEN2010 2365 IFA$="2"THENB=B+1:IFB<=1THEN2250 2370 IFA$="2"THENIFB>1THEN2405 2375 IFA$="3"THEN1945 2380 IFA$="4"THEN120 2385 IFA$="5"THENPRINT"[147][196]O YOU WISH TO QUIT? (Y/N)" 2390 GETA$:IFA$<>"Y"ANDA$<>"[217]"ANDA$<>"N"ANDA$<>"[206]"THEN2390 2395 IFA$="Y"ORA$="[217]"THEN785 2400 IFA$="N"ORA$="[206]"THEN2310 2405 GOSUB3420:PRINT"[147][212]HERE ARE NO MORE EXAMPLES TO":PRINT 2410 PRINT"DECIPHER BY DIRECT KEYBOARD INPUT.":PRINT 2415 PRINT"[193]S AN EXERCISE, TRY MAKING UP SOME":PRINT 2420 PRINT"OF YOUR OWN!" 2425 FOR T=1TO6000:NEXT:GOTO2310 2430 REM READ DATA FOR ENCIPHERING PLAINTEXT OR DECIPHERING MESSAGE 2435 PRINT"[147][159][208]LEASE WAIT....[210]EADING DATA..." 2440 FORR=0TO9 2445 FORC=0TO9:READA$:NEXTC 2450 NEXTR 2455 FORA=0TO9 2460 FOR R=0TO9 2465 FORC=0TO9:READP$(A,R,C):NEXTC 2470 NEXT R 2475 NEXTA 2480 RETURN 2485 FORJ=1TOLEN(C$) 2490 X(J)=VAL(MID$(C$,J,1)) 2495 NEXTJ 2500 FORK=1TOLEN(C$)STEP3 2505 PRINT"[158]"P$(X(K),X(K+1),X(K+2));:FORT=1TO50:NEXT 2510 NEXTK 2515 RETURN 2520 FORJ=1TOLEN(D$) 2525 X(J)=VAL(MID$(D$,J,1)) 2530 NEXTJ 2535 FORK=1TOLEN(D$)STEP3 2540 PRINT"[158]"P$(X(K),X(K+1),X(K+2));:FORT=1TO50:NEXT 2545 NEXTK 2550 RETURN 2555 PRINT"[147][212]O DECIPHER A MESSAGE WHICH HAS BEEN":PRINT 2560 PRINT"ASSIGNED A MESSAGE NUMBER, AT THE":PRINT 2565 PRINT"SPECIAL CURSOR ENTER THE MESSAGE NUMBER":PRINT 2570 PRINT"AND PRESS <[210][197][212][213][210][206]>.":PRINT 2575 LE=3:AL=0:NU=1:GOSUB3445:M$=Z$ 2580 OPEN3,DV,3,"MESSAGE #"+M$:CLOSE3:OPEN15,DV,15:INPUT#15,E:CLOSE15 2585 IFE=0THEN2605 2590 GOSUB3420:PRINT"[205]AKE SURE YOUR HAVE THE DISK WITH" 2595 PRINT"THE NUMBERED MESSAGE IN THE DRIVE AND " 2600 PRINT"TRY AGAIN.":FORX=1TO6000:NEXT:GOTO2555 2605 OPEN2,DV,2,"MESSAGE #"+M$ 2610 J=1 2615 FORK=0TO1 2620 GET#2,A$:K=ST 2625 X(J)=VAL(A$) 2630 J=J+1 2635 NEXTK 2640 CLOSE2 2645 PRINT"[212]HE PLAINTEXT CORRESPONDING TO":PRINT 2650 PRINT"THE DECIPHERED MESSAGE IS:":PRINT 2655 FORL=1TOJ-2STEP3 2660 PRINT"[158]"P$(X(L),X(L+1),X(L+2)); 2665 NEXTL 2670 RETURN 2675 REM CREATE AND PRINT SETS OF CIPHER ARRAYS 2680 PRINT"[147][201]F NECESSARY, REMOVE THE":PRINT 2685 PRINT"[199]AZETTE [196]ISK FROM THE DISK DRIVE":PRINT 2690 PRINT"AND INSERT A NEWLY FORMATTED DISK":PRINT 2695 PRINT"OR A DISK WITH AT LEAST 100 BLOCKS":PRINT 2700 PRINT"FREE." 2705 POKE214,21:PRINT: PRINT"[158] [208]RESS TO CONTINUE" 2710 GETA$:IFA$<>" "THEN2710 2715 PRINT"[147][158][201]S THE DISK DRIVE READY?":PRINT 2720 PRINT"[194]E SURE YOUR PRINTER IS POWERED AND ":PRINT 2725 PRINT"PROPERLY CONNECTED AS DEVICE 4 AND":PRINT 2730 PRINT"THAT THERE IS ENOUGH PAPER. ([212]EN":PRINT 2735 PRINT"CIPHER ARRAYS REQUIRE THREE 8.5X11":PRINT 2740 PRINT"INCH SHEETS.) [208]OSITION THE PRINT":PRINT 2745 PRINT"HEAD AT THE TOP OF THE PAGE.":PRINT 2750 GOSUB3365 2755 OPEN15,4,15:CLOSE15:IFST<>.THENGOSUB3335 2760 IFST=0THEN2795 2765 PRINT"[158][215]HEN YOUR PRINTER IS READY PRESS <[210][197][212][213][210][206]>.":PRINT 2770 GETA$:IFA$<>CHR$(13)THEN2770 2775 OPEN15,4,15:CLOSE15:IFST<>.THENGOSUB3355 2780 IFST=0THEN2795 2785 PRINT"[147]":PRINT:PRINT"[159][212]HERE ARE STILL PROBLEMS WITH YOUR" 2790 PRINT"PRINTER. [211]ORRY!":GOTO120 2795 POKE214,22:PRINT:PRINT"[159] [208]RESS TO CONTINUE" 2800 GETA$:IFA$<>" "THEN2800 2805 PRINT:PRINT"[147][196]UPLICATE SETS OF CIPHER ARRAYS ARE":PRINT 2810 PRINT"PRINTED: ONE SET FOR YOU AND ANOTHER":PRINT 2815 PRINT"SET FOR THE RECIPIENT OF YOUR":PRINT 2820 PRINT"ENCIPHERED MESSAGES AND VICE VERSA.":PRINT 2825 PRINT"[212]O NUMBER SETS OF CIPHER ARRAYS, START" 2830 PRINT"WITH 1 AND NUMBER THE SETS SEQUENTIALLY." 2835 PRINT"[193]T THE SPECIAL CURSOR, ENTER THE":PRINT 2840 PRINT"NUMBER OF THIS SET OF ARRAYS:":PRINT 2845 LE=3:AL=0:NU=1:GOSUB3445:C$=Z$ 2850 PRINT"[193]T THE SPECIAL CURSOR, ENTER THE":PRINT 2855 PRINT"NUMBER (1-10) OF CIPHER ARRAYS TO":PRINT 2860 PRINT"BE PRINTED:":PRINT 2865 LE=2:AL=0:NU=1:GOSUB3445:N$=Z$:N=VAL(N$):PRINT"[147]" 2870 OPEN1,4:OPEN2,DV,2,"0:CIPHER ARRAY"+C$+",S,W" 2875 IF N<=4THEN2890 2880 IFN<=8THEN2920 2885 IFN<=10THEN2965 2890 PRINT"[159]SET OF ARRAYS #" C$ 2895 PRINT#1,"SET OF ARRAYS #" C$"[146]"SPC(25)"SET OF ARRAYS #" C$"[146]" 2900 PRINT#2,"SET OF ARRAYS #" C$"[146]"SPC(25)"SET OF ARRAYS #" C$"[146]" 2905 FORA=0TON-1:GOSUB3215 2910 NEXT A 2915 GOTO3025 2920 PRINT"[159]SET OF ARRAYS #" C$ 2925 PRINT#1,"SET OF ARRAYS #" C$"[146]"SPC(25)"SET OF ARRAYS #" C$"[146]" 2930 PRINT#2,"SET OF ARRAYS #" C$"[146]"SPC(25)"SET OF ARRAYS #" C$"[146]" 2935 FOR A=0TO3:GOSUB3215 2940 NEXTA 2945 FOR X=1TO15:PRINT#1:NEXT:FORX=1TO15:PRINT#2:NEXT 2950 FOR A=4TON-1:GOSUB3215 2955 NEXTA 2960 GOTO3025 2965 PRINT"[159]SET OF ARRAYS #" C$ 2970 PRINT#1,"SET OF ARRAYS #" C$"[146]"SPC(25)"SET OF ARRAYS #" C$"[146]" 2975 PRINT#2,"SET OF ARRAYS #" C$"[146]"SPC(25)"SET OF ARRAYS #" C$"[146]" 2980 FOR A=0TO3:GOSUB3215 2985 NEXTA 2990 FORX=1TO15:PRINT#1:NEXT:FORT=1TO15:PRINT#2:NEXT 2995 FOR A=4TO7:GOSUB3215 3000 NEXTA 3005 FORX=1TO15:PRINT#1:NEXT:FORT=1TO15:PRINT#2:NEXT 3010 FORA=8TON-1:GOSUB3215 3015 NEXTA 3020 GOTO3025 3025 CLOSE2:PRINT#1:CLOSE1:CLOSE15:OPEN15,DV,15,"I0":CLOSE15 3030 N$="[159] [208]RESS TO CONTINUE":PRINTN$ 3035 GETA$:IFA$<>" "THEN3035 3040 PRINT"[147]":PRINT 3045 PRINT"[158][194]E SURE YOUR PRINTER IS POWERED AND" 3050 PRINT"PROPERLY CONNECTED.":PRINT 3055 PRINT"[215]OULD YOU LIKE TO PRINT ADDITIONAL" 3060 PRINT"COPIES OF THIS SET OR A PREVIOUS SET OF CIPHER ARRAYS? (Y/N)":PRINT 3065 GETA$:IFA$<>"Y"ANDA$<>"[217]"ANDA$<>"N"ANDA$<>"[206]"THEN3065 3070 IF A$="Y"ORA$="[217]"THEN3080 3075 IF A$="N"ORA$="[206]"THEN3180 3080 PRINT"[193]T THE SPECIAL CURSOR, SPECIFY" 3085 PRINT"THE NUMBER PREVIOUSLY ASSIGNED TO" 3090 PRINT"THE SET OF CIPHER ARRAYS:":PRINT 3095 LE=3:AL=0:NU=1:GOSUB3445:C$=Z$ 3100 OPEN15,4,15:CLOSE15:IFST<>.THENGOSUB3335 3105 IFST=0THEN3140 3110 PRINT"[158][215]HEN YOUR PRINTER IS READY PRESS <[210][197][212][213][210][206]>.":PRINT 3115 GETA$:IFA$<>CHR$(13)THEN3115 3120 OPEN15,4,15:CLOSE15:IFST<>.THENGOSUB3355 3125 IFST=0THEN3140 3130 PRINT"[147][158][212]HERE ARE STILL PROBLEMS WITH YOUR":PRINT 3135 PRINT"PRINTER. [211]ORRY!":GOTO120 3140 PRINT:PRINT"[159][208]LEASE WAIT....NOW PRINTING":PRINT 3145 PRINT"SET OF CIPHER ARRAYS...." 3150 OPEN2,DV,2,"CIPHER ARRAY"+C$:OPEN1,4 3155 FORK=0TO1 3160 GET#2,A$:K=ST 3165 PRINT#1,A$;:FORT=1TO40:NEXT 3170 NEXTK 3175 CLOSE2:PRINT#1:CLOSE1:CLOSE15:OPEN15,DV,15,"I0":CLOSE15 3180 PRINT"[147]":PRINT"[215]OULD YOU LIKE TO":PRINT 3185 PRINT"[159]1[146] RUN A NEW SET OF CIPHER ARRAYS?" 3190 PRINT"[159]2[146] RETURN TO MAIN MENU?" 3195 PRINT"[208]RESS [159]1[146] OR [159]2[146]." 3200 GETA$:IFA$<>"1"ANDA$<>"2"THEN3200 3205 IFA$="1"THEN2715 3210 IFA$="2"THEN120 3215 PRINT#1,"ARRAY" A"[146] ARRAY" A"[146]" 3220 PRINT#2,"ARRAY" A"[146] ARRAY" A"[146]" 3225 L$="[159][145]COLUMN--->[158]0 1 2 3 4 5 6 7 8 9 " 3230 Q$="COLUMN--->0 1 2 3 4 5 6 7 8 9 COLUMN--->0 1 2 3 4 5 6 7 8 9 " 3235 PRINT""L$:PRINT#1,Q$:PRINT#2,Q$ 3240 GOSUB3250:PRINT"[145][145][145][145][145][145]ARRAY" A"[146]" 3245 RETURN 3250 REM SUBROUTINE TO GENERATE RANDOM ELEMENTS FOR CIPHER ARRAYS 3255 FORR=0TO9:FORC=0TO9: 3260 P$(A,R,C)=CHR$(INT(RND(0)*43+48)) 3265 NEXTC,R 3270 FOR R=0 TO 9 3275 PRINT"[158]"SPC(09)R;:FOR C=0TO9 3280 IFP$(A,R,C)=":"ORP$(A,R,C)=";"THENP$(A,R,C)=CHR$(INT(RND(0)*26+65)) 3285 IFP$(A,R,C)="<"ORP$(A,R,C)="="THENP$(A,R,C)=CHR$(INT(RND(0)*26+65)) 3290 IFP$(A,R,C)=">"ORP$(A,R,C)="?"THENP$(A,R,C)=CHR$(INT(RND(0)*26+65)) 3295 IFP$(A,R,C)="@"THENP$(A,R,C)=CHR$(INT(RND(0)*26+65)) 3300 PRINT" "P$(A,R,C);:NEXTC:PRINT 3305 PRINT#1,SPC(06)R;:FORC=0TO9:PRINT#1," "P$(A,R,C); 3310 NEXTC:PRINT#1,SPC(18)R;:FORC=0TO9:PRINT#1," "P$(A,R,C);:NEXTC:PRINT#1 3315 PRINT#2,SPC(06)R;:FORC=0TO9:PRINT#2," "P$(A,R,C); 3320 NEXTC:PRINT#2,SPC(18)R;:FORC=0TO9:PRINT#2," "P$(A,R,C);:NEXTC:PRINT#2 3325 NEXT R 3330 RETURN 3335 GOSUB3420:PRINT"[197]RROR:[158]IS YOUR PRINTER TURNED ON?":PRINT 3340 FOR J=1TO10:POKE54296,15:FORK=1TO5:NEXT:POKE54296,0:FORK=1TO5:NEXT:NEXT 3345 FORT=1TO1000:NEXT 3350 RETURN 3355 FOR J=1TO10:POKE54296,15:FORK=1TO5:NEXT:POKE54296,0:FORK=1TO5:NEXT:NEXT 3360 RETURN 3365 REM DISK DRIVE CHECK 3370 CLOSE15:OPEN15,DV,15:INPUT#15,E,E$,T,S:CLOSE15:IFE=0THENRETURN 3375 GOSUB3355 :PRINT:PRINTE;E$;T;S 3380 PRINT"[158][217]OUR DISK DRIVE IS NOT READY! [208]LEASE";:PRINT 3385 PRINT"PRESS [210][197][212][213][210][206][146][158] WHEN DISK DRIVE IS READY." 3390 GETA$:IFA$<>CHR$(13)THEN3390 3395 OPEN15,DV,15:INPUT#15,E,E$,T,S:CLOSE15:IFE=0THENRETURN 3400 PRINT"[211]ORRY ABOUT THE DRIVE PROBLEMS!":FORT=1TO5000:NEXT:GOTO120 3405 FOR J=1TO10:POKE54296,15:FORK=1TO5:NEXT:POKE54296,0:FORK=1TO5:NEXT:NEXT 3410 RETURN 3420 REM TELETYPE "DING" 3425 S=54272:FORL=0TO24:POKES+L,0:NEXTL 3430 POKES+1,70:POKES+5,9:POKES+15,70:POKES+24,15:POKES+4,21:FORT=1TO300:NEXT 3435 POKES+4,20:FORT=1TO300:NEXT 3440 RETURN 3445 Z$="":POKE198,0:PRINT"[159][164][146]"; 3450 FORA=1TOLE+1 3455 GETA$:IFA$=""THEN3455 3460 IFA$=CHR$(13)THENPRINT"[157] ":RETURN 3465 IFA$=CHR$(20)ANDA>1THENPRINT"[157][157] [157]";:A=A-1:Z$=LEFT$(Z$,A-1):GOTO3455 3470 IF(A=LE+1)THEN3455 3475 IF(NU)AND((A$>="0")AND(A$<="9"))THEN3490 3480 IF(AL)AND((A$>="A"ANDA$<="Z"))THEN3490 3485 GOTO3455 3490 PRINT"[157]"A$;:POKE212,0:PRINT"[159][164][146]";:Z$=Z$+A$:NEXT 3495 Z$="":POKE198,0:PRINT"[159][164][146]"; 3500 FORA=1TOLE+1 3505 GETA$:IFA$=""THEN3505 3510 IFA$=CHR$(13)THENPRINT"[157] ":RETURN 3515 IFA$=CHR$(20)ANDA>1THENPRINT"[157][157] [157]";:A=A-1:Z$=LEFT$(Z$,A-1):GOTO3505 3520 IF(A=LE+1)THEN3505 3525 IF(NU)AND((A$>="0")AND(A$<="9"))THEN3545 3530 IF(AL)AND((A$>=" "ANDA$<="/")OR(A$>=":"ANDA$<="Z"))THEN3545 3535 IF(AL)THENIF(A$>="[193]"ANDA$<="[218]")THEN3545 3540 GOTO3505 3545 PRINT"[157]"A$;:POKE212,0:PRINT"[159][164][146]";:Z$=Z$+A$:NEXT 5000 DATA3,4,8,R,R,P,Y,L,A,Y 5001 DATAB,W,0,M,C,Z,U,F,3,F 5002 DATA3,N,D,G,2,8,J,Z,L,G 5003 DATAB,P,Q,X,A,H,J,X,V,1 5004 DATAV,D,0,K,S,3,L,6,7,V 5005 DATAU,0,H,M,Y,B,K,9,S,A 5006 DATAF,C,K,Y,C,Y,H,E,O,3 5007 DATAG,S,5,F,S,P,O,X,G,Y 5008 DATAU,I,T,F,W,C,M,H,0,R 5009 DATAY,C,F,Q,M,A,X,D,C,U 5010 DATA5,T,A,N,1,I,J,M,4,B 5011 DATAK,D,L,G,J,O,6,C,P,2 5012 DATAV,S,E,F,L,X,2,2,I,G 5013 DATA0,K,5,H,4,Q,5,S,4,3 5014 DATAB,0,8,7,H,E,P,B,U,B 5015 DATAV,X,O,L,A,I,O,Y,4,3 5016 DATAH,8,T,K,G,L,F,Q,7,T 5017 DATA7,K,P,F,N,F,L,B,D,9 5018 DATA6,8,O,9,V,G,8,D,R,L 5019 DATAG,T,Q,S,W,C,J,U,I,I 5020 DATAN,D,0,C,Q,B,5,A,X,T 5021 DATAR,G,P,G,K,1,M,O,V,P 5022 DATA0,H,B,I,4,I,N,U,V,1 5023 DATA4,V,C,S,Q,G,H,K,I,K 5024 DATAY,3,9,1,A,6,Q,4,H,C 5025 DATAY,1,W,E,R,I,J,Z,5,5 5026 DATAU,U,A,7,5,B,K,1,W,Y 5027 DATA3,P,9,K,A,0,S,R,U,D 5028 DATA9,H,M,8,1,U,5,Y,7,P 5029 DATAL,1,Z,2,V,4,D,7,E,Z 5030 DATAU,Q,0,Z,Y,L,G,J,E,L 5031 DATAW,W,M,L,3,8,P,2,M,F 5032 DATAS,O,L,R,Q,N,Q,9,H,N 5033 DATAH,V,D,P,G,8,C,N,B,I 5034 DATAK,S,2,X,K,X,G,U,E,V 5035 DATAO,K,1,U,G,C,L,W,9,B 5036 DATAP,Q,7,C,S,L,G,3,O,G 5037 DATAC,I,0,D,1,G,C,L,I,B 5038 DATAL,M,O,C,Z,N,6,F,G,U 5039 DATA0,B,K,I,G,T,I,T,T,V 5040 DATAZ,A,4,B,8,A,S,3,A,9 5041 DATAY,N,B,T,1,1,Y,4,J,6 5042 DATAD,U,6,B,4,T,D,V,H,5 5043 DATAZ,T,1,6,C,X,P,L,V,H 5044 DATAE,Y,B,D,H,D,7,S,1,D 5045 DATAZ,1,A,T,R,0,8,W,2,P 5046 DATA4,Y,C,G,K,0,N,Y,4,F 5047 DATA6,I,F,I,I,E,K,E,H,N 5048 DATAC,6,X,K,0,J,2,K,D,D 5049 DATAQ,6,N,L,F,O,Q,8,3,5 5050 DATA3,Z,F,F,X,K,T,D,R,B 5051 DATA0,I,I,H,A,Q,D,X,Q,4 5052 DATAK,8,8,Z,T,G,W,3,J,W 5053 DATAG,2,B,A,V,9,V,L,E,4 5054 DATAN,G,C,C,7,O,4,I,B,R 5055 DATAR,T,9,S,M,F,T,5,A,G 5056 DATAX,B,0,0,K,Z,7,F,B,R 5057 DATAO,B,I,Y,1,J,4,D,8,B 5058 DATA2,L,5,T,Z,B,U,3,O,R 5059 DATAF,T,3,L,K,E,U,Q,4,C 5060 DATAB,E,F,W,I,C,I,V,X,H 5061 DATAS,I,X,I,X,4,T,7,T,S 5062 DATA5,2,J,X,Q,5,N,U,U,2 5063 DATAO,F,1,G,6,Q,6,H,4,X 5064 DATAL,M,J,Q,L,L,X,J,V,L 5065 DATAR,X,0,T,F,8,2,T,B,N 5066 DATA5,Z,W,H,C,Y,F,J,F,G 5067 DATAU,M,P,Z,G,G,T,I,4,U 5068 DATA4,A,M,5,M,P,L,V,T,J 5069 DATA2,R,H,4,F,G,4,K,J,K 5070 DATAX,F,U,7,S,O,J,A,G,P 5071 DATA7,1,8,K,Y,6,A,U,F,F 5072 DATA3,G,N,F,2,X,N,8,E,E 5073 DATAP,2,Z,0,K,I,C,8,B,K 5074 DATAJ,8,W,1,R,C,L,M,A,C 5075 DATAH,V,C,F,L,J,M,0,P,X 5076 DATA9,T,V,F,C,A,J,U,I,P 5077 DATA2,H,N,7,H,8,Z,C,6,Z 5078 DATA5,A,Q,D,F,9,D,Y,U,D 5079 DATAF,R,8,F,F,U,U,W,V,Y 5080 DATAQ,P,C,F,2,S,9,3,H,T 5081 DATAI,Z,F,K,X,T,6,G,3,F 5082 DATAB,7,I,X,6,U,V,H,G,C 5083 DATAY,W,9,T,G,2,A,D,I,X 5084 DATAQ,U,Q,B,Q,V,P,P,I,D 5085 DATAX,P,C,0,4,A,Y,7,G,U 5086 DATA8,Q,D,J,F,7,F,W,1,D 5087 DATAQ,P,9,U,V,U,D,6,8,C 5088 DATAU,W,E,Z,N,X,L,T,9,X 5089 DATAM,Y,8,3,X,M,M,V,M,6 5090 DATAL,1,R,O,S,M,U,Z,B,L 5091 DATA7,P,Z,3,D,T,1,I,3,E 5092 DATAH,6,A,L,T,X,9,4,X,0 5093 DATAZ,U,9,O,7,0,O,2,N,9 5094 DATA4,9,Y,I,F,M,I,T,2,0 5095 DATAX,A,I,M,L,P,M,N,P,4 5096 DATA6,L,6,I,9,G,L,W,2,C 5097 DATAT,D,N,P,F,0,C,K,F,3 5098 DATAE,N,7,0,5,Z,T,E,V,1 5099 DATAN,T,I,U,6,T,8,X,M,N 5100 DATA6,Z,N,D,K,8,7,R,W,O